/*
 * Copyright (c) 2025 Industrial Software Feature Database
 */
package com.comac.ins.isfd.service;

import com.comac.ins.common.mybatis.core.page.TableDataInfo;
import com.comac.ins.isfd.domain.bo.IsfdMeshModelCollectBo;
import com.comac.ins.isfd.domain.bo.IsfdMeshModelUploadConfirmBo;
import com.comac.ins.isfd.domain.bo.query.IsfdMeshModelCollectQueryBo;
import com.comac.ins.isfd.domain.vo.IsfdMeshModelCollectTreeVo;
import com.comac.ins.isfd.domain.vo.IsfdMeshModelCollectVo;
import com.comac.ins.isfd.domain.vo.IsfdMeshModelUploadConfirmVo;
import com.comac.ins.isfd.domain.vo.IsfdMeshModelUploadDataHandlingVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 自然网格模型库-采集Service接口
 *
 * @author hxloongs
 * @date 2025-01-13
 */
public interface IIsfdMeshModelCollectService {

    /**
     * 查询自然网格模型库-采集
     *
     * @param id 主键
     * @return 自然网格模型库-采集
     */
    IsfdMeshModelCollectVo queryById(Long id);

    /**
     * 分页查询自然网格模型库-采集列表
     */
    TableDataInfo<IsfdMeshModelCollectVo> queryPageList(IsfdMeshModelCollectQueryBo bo);


    /**
     * 查询符合条件的自然网格模型库-采集列表
     *
     * @param bo 查询条件
     * @return 自然网格模型库-采集列表
     */
    List<IsfdMeshModelCollectVo> queryList(IsfdMeshModelCollectBo bo);


    /**
     * 文件上传-数据处理
     */
    IsfdMeshModelUploadDataHandlingVo uploadDataHandling(MultipartFile multipartFile, Long uploadTime, String modelNumber, String batchNumber);


    /**
     * 文件上传-确认上传
     */
    IsfdMeshModelUploadConfirmVo uploadConfirm(IsfdMeshModelUploadConfirmBo confirmBo);

    /**
     * 查看全部文件
     */
    IsfdMeshModelCollectTreeVo allFiles(Long id);
}
